In some communication system, a data publisher (e.g., a server) may distribute data to thousands of subscribers (e.g., clients). Data delivery may be performed, for example, using multicast data transport.
Unfortunately, multicast data transport may have disadvantages. For example, it may require significant overhead at the publisher side; it may deliver to a particular subscriber data that the particular subscriber does not need; and it may require, for reliable data delivery purposes, re-transmit mechanisms to improve reliability of data delivery. Utilization of additional layer of reliable protocol may increase even more the fabric utilization and/or the subscriber overhead, which in turn may result in a “multicast storm” and further loss of subsequent data; it may suffer from additional latency, e.g., a bi-product of the additional reliable protocol; it may result in a dependency of the subscribers on the publisher for active delivery (e.g., “push”) of data by the publisher to the subscribers; it may result in a dependency of the publisher on the subscribers for active acknowledgment (e.g., “push”) of data delivery by the subscribers to the publisher; and it may require a synchronization scheme, a timing scheme, or other coupling scheme between the publisher and the subscribers.